package com.cloudfun.campusshare.common.model.vo;

import com.cloudfun.campusshare.common.model.LiquidPumpVo;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import java.util.List;

/**
 * @author : zhangyongjie
 * @version : 1.0
 * @createTime : 2020/4/20 17:15
 * @description : 订单生成
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "订单生成")
public class OrderGenerateVO {

    @ApiModelProperty(value = "设备模式id")
    private String deviceModeId;

    @ApiModelProperty("液体泵选项")
    private List<LiquidPumpVo> liquidPumps;

    @ApiModelProperty(value = "设备机器码")
    private String machineNo;

    @ApiModelProperty("干衣机烘干时间")
    @Min(value = 30, message = "烘干时间限制30-120")
    @Max(value = 120, message = "烘干时间限制30-120")
    private Integer dryTime;

    @ApiModelProperty(value = "用户领取的代金券id")
    private String userCouponId;

    @ApiModelProperty(value = "满减活动id")
    private String rebatePromotionId;

    @ApiModelProperty(value = "折扣活动id")
    private String discountPromotionId;

    @ApiModelProperty(value = "是否从预约页面进入")
    @JsonProperty(defaultValue = "false")
    private boolean isInvokeByOrderPage = false;
}
